#include <algorithm>
#include <iostream>
#include <ratio>
using namespace std;
typedef long long ll;
#include<vector>



int main()
{
    int t;
    cin >> t;
    while (t--)
    {
        vector<ll>arr;
        for (int i = 0; i < 6; ++i)
        {
            int ret = 0;
            cin >> ret;
            arr.push_back(ret);
        }
        sort(arr.begin(), arr.end());
        int flag = 0;
        for (int i = 0; i < 4 && flag != 1; ++i)
        {
            for (int j = i + 1; j < 5 && flag != 1; ++j)
            {
                for (int z = j + 1; z < 6 && flag != 1; ++z)
                {
                    if (arr[i] + arr[j] > arr[z])
                    {
                        vector<ll>arr2;
                        for (int n = 0; n < 6; ++n)
                        {
                            if (n == i || n == j || n == z)
                            {
                                continue;
                            }
                            arr2.push_back(arr[n]);
                        }
                        if (arr2[0] + arr2[1] > arr2[2])
                        {
                            cout << "Yes" << endl;
                            flag = 1;
                        }
                    }
                }
            }
        }
        if (!flag)
        {
            cout << "No" << endl;
        }

    }
}


//class Solution
//{
//public:
//    vector<vector<bool>>check;
//    void dfs(vector<vector<char> >& grid, int row, int col)
//    {
//        if (row < 0 || col < 0 || row >= grid.size() || col >= grid[0].size() || check[row][col] == false || grid[row][col] == '0')
//        {
//            return;
//        }
//        check[row][col] = false;
//        dfs(grid, row + 1, col);
//        dfs(grid, row - 1, col);
//        dfs(grid, row, col + 1);
//        dfs(grid, row, col - 1);
//    }
//    int solve(vector<vector<char> >& grid)
//    {
//        int ret = 0;
//        check = vector<vector<bool>>(201, (vector<bool>(201, true)));
//        for (int i = 0; i < grid.size(); ++i)
//        {
//            for (int j = 0; j < grid[0].size(); ++j)
//            {
//                if (grid[i][j] == '1' && check[i][j] == true)
//                {
//                    dfs(grid, i, j);
//                    ret += 1;
//                }
//            }
//        }
//        return ret;
//
//    }
//};

//int main()
//{
//    string a, ss;
//    cin >> a;
//    int i = 0, Max = 0;
//    while (i < a.size())
//    {
//        int num = 0;
//        string ret;
//        while (a[i] <= '9' && a[i] >= '0')
//        {
//            ret += a[i];
//            i++;
//        }
//        if (ret.size() > Max)
//        {
//            Max = ret.size();
//            ss = ret;
//        }
//        i++;
//    }
//    cout << ss;
//}